<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ page import="com.esurvey.core.*" %>
<HTML>
<HEAD>
	<TITLE>eSurvey - Contrase&ntilde;a restablecida correctamente</TITLE>
	<LINK href="styles/general.css" type="text/css" rel="stylesheet">
	<LINK href="styles/rescurePassword.css" type="text/css" rel="stylesheet">
	<SCRIPT src="jquery/jquery.js" type="text/javascript"></SCRIPT>
	<SCRIPT src="js/global.js" type="text/javascript"></SCRIPT>
</HEAD>
<BODY>
	<%
		if ((session.getAttribute("login")!=null) && (session.getAttribute("secretQuestion")!=null)){
			try {
				String secretAnswer = (String) request.getParameter("secretAnswer");
				String user = (String) session.getAttribute("login");
				User u = eSurveyPersistence.loadUser(user);
				if (secretAnswer.toUpperCase().equals(u.getSecretAnswer().toUpperCase())) {
					String pass = (String) request.getParameter("pass");
					String verifyAction="verifyUser.jsp?user="+user+"&pass="+pass;
					String URL=request.getRequestURL().substring(0,request.getRequestURL().lastIndexOf("/")+1)+verifyAction;
					String subject="Contraseña restablecida";
					String msgbody="Su contraseña ha sido restablecida correctamente!\nUsuario: "+user+"\nContraseña: "+pass+"\nHaga click en este enlace para activar su cuenta y poder acceder de nuevo: "+URL;
					u.setPassword(pass);

					//Si el usuario no está logueado, quiere decir que se ha realizado una recuperación de contraseña y, por lo
					//tanto, llamamos al método correspondiente para cambiar su contraseña y también marcar como no verificado
					//su correo electrónico y, por último, le enviamos el email de verificación.
					//Si el usuario está logueado, simplemente llamamos al método correspondiente para cambiar la contraseña.
					if (session.getAttribute("username") == null) {
						eSurveyPersistence.rescurePassword(u);
						SMTP.send(u.getEmail(),subject,msgbody);
					} else {
						eSurveyPersistence.changePassword(u);
					}
				} else {
					response.sendRedirect("rescurePasswordAction.jsp?correctAnswer=false");
				}
			} catch (Exception e) {
				response.sendRedirect("error.jsp?exception="+e);
			}
	%>
	<DIV id="general">
		<DIV id="header">
			<%@ include file="header.jsp" %>
		</DIV>
		<DIV id="content">
			<DIV id="main">
				<H1>Felicidades <%= session.getAttribute("login") %>, su contrase&ntilde;a se ha restablecido correctamente.</H1>
				<%
					if (session.getAttribute("username") == null) {
						out.println("<P>Revise su correo electr&oacute;nico y acceda mediante el enlace que aparece en el mensaje que se le ha enviado para que pueda acceder a la aplicaci&oacute;n de nuevo.</P>");
					}
				%>
				<P>Puede volver al men&uacute; principal pulse <A href="login.jsp">aqu&iacute;</A>.
			</DIV>
			<DIV id="nav">
				<% if (session.getAttribute("kind") == "user") { %>
					<%@ include file="pollsterTabs.html" %>
				<% } else if (session.getAttribute("kind") == "admin") { %>
					<%@ include file="adminTabs.html" %>
				<% } else { %>
					<%@ include file="mainTabs.html" %>
				<% } %>
			</DIV>
		</DIV>
		<DIV id="footer">
			<%@ include file="footer.jsp" %>
		</DIV>
	</DIV>
	<%
		} else {
			response.sendRedirect("login.jsp");
		}
	%>
</BODY>
</HTML>
